This invention relates to an Asynchronous Transfer Mode (referred to as ATM, hereinafter) exchange system used in a multimedia communication system employing a buffer memory. More specifically this invention relates to a priority control method which prevents an adverse influence caused by abnormal traffic generated in a certain communication quality class from being exerted on the rest of the classes.
The multimedia communication system employing the buffer memory provides services requiring communication quality with respect to characteristics such as real time processability, low destruction rate, "Best effort" transfer and the like. The following services have been provided such as Circuit Emulation; Constant Bit Rate Video service (referred to as CBR class) at a constant transmission bit rate requiring strict standards on delay or cell loss; Audio and visual service at a variable bit rate requiring real time processability (referred to as rt-VBR class); Data service at a variable bit rate requiring no real time processability (referred to as nrt-VBR class); a service at a variable bit rate requiring the best effort transfer and strict standards on cell loss (referred to as ABR class); a service requiring destruction and fairness at every cell (referred to as UBR class) and the like. A priority control method in such an ATM exchange system should be effective for simultaneously meeting the above-described different types of required communication quality.
In the conventional priority control method, an initial priority level is set for each communication quality class defined by the required communication quality. If a waiting queue length of each communication quality class is smaller than a threshold value specified with respect to the respective communication quality classes, priority control is executed according to the initial priority level. If a certain communication quality class has a waiting queue length equal to or larger than a threshold value, the priority level of the class is raised one level higher and the priority control will be executed according to the changed priority level. In case of those communication quality classes provided with the same priority, a rotational priority control is executed. The rotational priority control is done by outputting the cell from buffers of those classes one by one alternately. FIG. 16 shows a more detailed explanation of the above-described prior art. In FIG. 16, it is assumed that 3 classes are priority controlled.
An initial priority level is set for communication quality classes C1, C2 and C3, according to the communication quaility required by those classes. In FIG. 16, one or more of the priorities, 1, 2, 3 and 4 is assigned to the communication quality classes C1, C2 and C3. Threshold values Th1, Th2 and Th3 are also set for the communication quality classes C1, C2 and C3 according to the communication quality required by the classes C1, C2 and C3. When each of waiting queue length Q1, Q2 and Q3 of the communication quality classes C1, C2 and C3 is less than Th1, Th2 and Th3, respectively, the cell stored in a buffer B1 of the communication quality class C1 is output with the highest priority according to the initial priority level. A cell stored in a buffer B2 of the communication quality class C2 is output only when the buffer B1 stores no cells. A cell stored in a buffer B3 of the communication quality class C3 is output only when both buffers B1 and B2 store no cells.
If the waiting queue length Q2 exceeds the threshold value Th2 owing to increased traffic amount in a certain communication class, i.e., C2, the priority level of the communication quality class is changed from 3 to 2, thus changing the priority level of the classes C1, C2 and C3 to 2, 2 and 4, respectively. As a result, a rotational priority control is executed between the classes C1 and C2 at the same priority level. When the waiting queue length Q2 becomes equal to or smaller than the threshold value Th2, the priority level of the communication quality class C2 is restored to the original priority level of 3.
In the conventional priority control method, when the waiting queue length exceeds the threshold value due to increased traffic in a certain communication class, the priority level of the communication quality class is raised one level up. When the traffic amount is increased for some reason such that the waiting queue length exceeds the threshold value in a certain the communication quality class, communication quality of the other classes may be adversely influenced. For example, when the waiting queue length Q2 exceeds the threshold value Th2 due to the increased traffic in the communication quality class C2, the number of cells in the communication quality class C1 output in a unit of time is decreased, resulting in degraded communication quality. Now suppose that the waiting queue length Q3 of the communication quality class C3 now exceeds its threshold value Th3. Even though the priority level of the C3 is raised from 4 to 3, the priority of the class C2 has been set to 2 and cells are never output from the communication quality class C3 even if the buffer for the communication quality class C1 stores no cells.